public class REAL extends ANY
{
  private  float m_object;
  public  REAL()
  {
  }
  
  public REAL(float f)
  {
   m_object=f;
  }
  
  public float get()
  {
   return m_object;
  }
  
  public REAL REALCLONE()
  {
   return new REAL(m_object);
  }
  
  public REAL REALSUMREAL(REAL a)
  {
   return new REAL(get()+a.get());
  }
  public REAL REALSUBREAL(REAL a)
  {
   return new REAL(get()-a.get());
  }
  public REAL REALMULREAL(REAL a)
  {
   return new REAL(get()*a.get());
  }
  public REAL REALDIVREAL(REAL a)
  {
   return new REAL(get()/a.get());
  }
  public REAL REALPOWREAL(REAL a)
  {
   return new REAL( (float)java.lang.Math.pow((double)get(),(double)a.get()));
  }
  
  public REAL REALSUMINTEGER(INTEGER a)
  {
   return new REAL(get()+a.get());
  }
  public REAL REALSUBINTEGER(INTEGER a)
  {
   return new REAL(get()-a.get());
  }
  public REAL REALMULINTEGER(INTEGER a)
  {
   return new REAL(get()*a.get());
  }
  public REAL REALDIVINTEGER(INTEGER a)
  {
   return new REAL(get()/a.get());
  }
  public REAL REALPOWINTEGER(INTEGER a)
  {
   return new REAL( (float)java.lang.Math.pow((double)get(),(double)a.get()));
  }
  
  
  public BOOLEAN REALLSINTEGER(INTEGER a)
  {
   return new BOOLEAN(get()<a.get());
  }
  public BOOLEAN REALGTINTEGER(INTEGER a)
  {
   return new BOOLEAN(get()>a.get());
  }
  public BOOLEAN REALLEQINTEGER(INTEGER a)
  {
   return new BOOLEAN(get()<=a.get());
  }
  public BOOLEAN REALGEQINTEGER(INTEGER a)
  {
   return new BOOLEAN(get()>a.get());
  }
  public BOOLEAN REALNSEQINTEGER(INTEGER a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())>0.0001);
  }
  public BOOLEAN REALSEQINTEGER(INTEGER a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())<=0.0001);
  }
  public BOOLEAN REALNEQINTEGER(INTEGER a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())>0.0001);
  }
  public BOOLEAN REALEQINTEGER(INTEGER a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())<=0.0001);
  }
  
  
  public BOOLEAN REALLSREAL(REAL a)
  {
   return new BOOLEAN(get()<a.get());
  }
  public BOOLEAN REALGTREAL(REAL a)
  {
   return new BOOLEAN(get()>a.get());
  }
  public BOOLEAN REALLEQREAL(REAL a)
  {
   return new BOOLEAN(get()<=a.get());
  }
  public BOOLEAN REALGEQREAL(REAL a)
  {
   return new BOOLEAN(get()>a.get());
  }
  public BOOLEAN REALNSEQREAL(REAL a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())>0.0001);
  }
  public BOOLEAN REALSEQREAL(REAL a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())<=0.0001);
  }
  public BOOLEAN REALNEQREAL(REAL a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())>0.0001);
  }
  public BOOLEAN REALEQREAL(REAL a)
  {
   return new BOOLEAN(Math.abs(get()-a.get())<=0.0001);
  }
  
  
  public INTEGER    REALTO_INTEGER()
 {
  return new INTEGER((int)get());
 }
 
 public CHARACTER    REALTO_CHARACTER()
 {
  return new CHARACTER((char)get());
 }
 public STRING    REALTO_STRING()
 {
  return new STRING(new java.lang.Double(get()).toString());
 }
 
 public void REALFROM_INTEGER(REAL a)
 {
  m_object=(float)(a.get());
 }
 public void REALFROM_CHARACTER(CHARACTER a)
 {
  m_object=(float)(a.get());
 }
 public void REALFROM_STRING(STRING a)
 {
  m_object=(float)( java.lang.Double.valueOf(a.get()).doubleValue() );
 }
}